package club.baimahu.pencil.domain.session;

import club.baimahu.pencil.domain.entity.account.AccountManager;
import club.baimahu.pencil.domain.entity.Goods;
import club.baimahu.pencil.domain.entity.Supplier;

import java.util.List;

/**
 * 仓库
 */
public interface GoodsFactory {

/*
    void buyGoods(List<Goods> goodsList);
*/

    /**
     * 商品出库
     * @param goodsList
     * @return
     */
    boolean checkoutGoods(List<Goods> goodsList);

    /**
     * 商品入库
     * @param goodsStockList
     */
    void stockWithGoods(List<GoodsStock> goodsStockList);

    Goods getGoods(String goodsNo, Integer amount);

    boolean isAvailable(String goodsNo, Integer amount);

    void setAccountManager(AccountManager accountManager);

    Supplier getSupplier();
}
